There are a variety of techniques for capturing three-dimensional surface data from an object. The resulting three-dimensional model may be used directly for many purposes; however, in certain applications there may be valuable visual information (such as color, texture, shading, etc.) in two-dimensional photographs of the object. Where a number of images of the object are available from a number of different viewpoints, a user may wish to navigate from one viewpoint to another viewpoint while working with the three-dimensional model.
Some general approaches to three-dimensional navigation include point-and-click interfaces that provide animated fly-overs to selected locations using a three-dimensional model with an overlay of satellite pictures (such as Google Earth). However, in a visual inspection or similar environment, the navigation problem may be further constrained because the available source images are captured from disparate, and sometimes widely disparate, viewpoints that may vary with three degrees of freedom in position and rotation. In this environment, it may not be sufficient to simply choose an arbitrary viewpoint in response to a user input. It may further be necessary to reconcile a user's input with a finite collection of actual source images to select an image from a camera position and camera angle that offers a satisfactory view of the selected subject matter.
There remains a need for improved techniques for navigating among a number of images of an object in three-dimensional space.